package com.kaifamiao.demo.d0727;

import java.util.Arrays;
import java.util.Scanner;

public class Test {

    public static void main(String[] args) {
        /*
         定义一个数组，有 5 个 Student 对象
            根据每个学生的成绩排序
          排序完后依次输出 学生学号  姓名  成绩
         */
        Student[] stus = new Student[5];
        String[] names = {"大娃", "二娃", "三娃", "四娃", "五娃"};
        Scanner sc = new Scanner(System.in);

        for(int i = 0; i < stus.length; i ++){
            stus[i] = new Student();
            stus[i].no = (i + 1) * 100;
            stus[i].name = names[i];
            stus[i].score = Math.random() * 100;
//            System.out.println("输入 第" + (i + 1) + " 个 学生的学号");
//            int no = sc.nextInt();
//            stus[i].no = no;
//
//            System.out.println("输入 第" + (i + 1) + " 个 学生的姓名");
//            String name = sc.next();
//            stus[i].name = name;
//
//            System.out.println("输入 第" + (i + 1) + " 个 学生的成绩");
//            double score = sc.nextDouble();
//            stus[i].score = score;
//
//            stus[i].show();
        }

        System.err.println("未排序前: ");
        for (int i = 0; i < stus.length; i ++){
            stus[i].show();
        }

        sort(stus);

        System.err.println("排序后: ");
        for (int i = 0; i < stus.length; i ++){
            stus[i].show();
        }


        // 排序
//        Arrays.sort(stus);  Student 没办法直接比较



    }

    public static void sort(Student[] stus){
        if (stus == null){
            return;
        }

        for (int i = 0; i < stus.length - 1; i ++){
            for (int j = 0; j < stus.length - 1 - i; j ++){
                if (stus[j].score > stus[j + 1].score){
                    // 交换位置
                    Student temp = stus[j];
                    stus[j] = stus[j + 1];
                    stus[j + 1] = temp;
                }

            }
        }
    }
}
